4>VERSION = 3.00 custmessagePixelsClass1custom custmessage cproperty d KK6C%U Hs C CCTC  CC dTC2sB- CxB-UCMESSAGE LCMESSAGEUSERInit,1qrq!qAr1()K$cproperty = Name = "custmessage" custom)MS Sans Serif, 0, 8, 5, 13, 11, 11, 2, 0  passtablePixelsClass1 commandbutton passtable leditmode  %qUTCSAFETYv;cNewTable = putfile("Save &file:","PASSWORD.DBF","DBF") %C eBG.kh1 useridIusernameCpasswordC userlevelIuserinfoM Q sr useridusernamepassword userleveluserinfoadminadmin& usernameusernameQSET SAFETY &cSaveSafety T TpasswordTusername U CSAVESAFETY CNEWTABLETHISFORMOOBJECTCTABLE CPASSWORD CFIELDNAMEREFRESHClick,1XAAa3AQ2h)sPROCEDURE Click #DEFINE C_SAVEPROMPT_LOC "Save &file:" #DEFINE FLD_USERID "userid" #DEFINE FLD_USERNAME "username" #DEFINE FLD_PASSWORD "password" #DEFINE FLD_USERLEVEL "userlevel" #DEFINE FLD_USERINFO "userinfo" cSaveSafety = SET("SAFETY") cNewTable = putfile(C_SAVEPROMPT_LOC,"PASSWORD.DBF","DBF") IF EMPTY(m.cNewTable) RETURN ENDIF SET SAFETY OFF CREATE TABLE (m.cNewTable) ; (FLD_USERID i,; FLD_USERNAME c(20),; FLD_PASSWORD c(20),; FLD_USERLEVEL i,; FLD_USERINFO m) USE (m.cNewTable) INSERT INTO (m.cNewTable); (FLD_USERID,FLD_USERNAME,FLD_PASSWORD,FLD_USERLEVEL,FLD_USERINFO); VALUES(1,"admin","admin",1,"") INDEX ON FLD_USERNAME TAG FLD_USERNAME USE SET SAFETY &cSaveSafety THISFORM.oObject.cTable = m.cNewTable THISFORM.oObject.cPassword = FLD_PASSWORD THISFORM.oObject.cFieldname = FLD_USERNAME THISFORM.Refresh ENDPROC Height = 27 Width = 185 FontName = "MS Sans Serif" FontSize = 8 Caption = "Create New Password Table..." Name = "passtable" 3PROCEDURE Init LPARAMETER cMessage LOCAL lcMessage DO CASE CASE VARTYPE(m.cMessage)="C" lcMessage= ALLTRIM(m.cMessage) CASE !EMPTY(ALLTRIM(user)) lcMessage = ALLTRIM(user) OTHERWISE RETURN .F. ENDCASE MESSAGEBOX(lcMessage) RETURN .F. && this prevents builder from appearing ENDPROC addcodePixelsClass1customaddcode X%(X6U %C`<B-$TCC RightClickC%C ZCNThe builder was already run for this class and added code to RightClick event.xB-)TTHIS. .DoMenu()h%CQWould you like to have code added to the RightClick event that invokes this menu?$x& RightClickB-U LCMENUCODELCMETHODCONTENTSAGETFORM READMETHODTHISFORMOOBJECTNAME WRITEMETHODInit,1qABqAaAr1)Name = "addcode" custom containerWidth = 240 Height = 24 BorderWidth = 0 cproperty = cFileName ctype = cversion = cvalidexpression = builder = builderx = BuilderB,BuilderComboBoxBuilder cextskeleton = cfilename = Name = "filepicker" cproperty ctype cversion cvalidexpression lautorefresh leditmode lreadonly lupdateonchange builder builderx cextskeleton cfilename textboxtextboxtxtFile filepicker commandbutton commandbutton)MS Sans Serif, 0, 8, 5, 13, 11, 11, 2, 0  chartpickerPixelsClass1buildercombobox chartpicker*setcharttype  +%XJU T H(j H TL h TN  T9  T<  T3  T6  T )T  I T  jTTU LNCHARTTYPE NCHARTVALUETHIS LISTINDEXTHISFORMOOBJECT NCHARTTYPE%CAreaC3D AreaCBarC3D BarCColumnC 3D ColumnCPieC3D PieCLineC3D Line T%CN/ TL H@ LdTArea NT3D Area 9TBar <T3D Bar 3TColumn 6#T 3D Column FTPie mT3D Pie TLine T3D Line2TAreaTT xU THIS LISTCOUNTADDITEM NGETVALUE LNCHARTTYPETHISFORMOOBJECT NCHARTTYPEVALUEWIDTH CUTHIS SETCHARTTYPE setcharttype,RefreshInteractiveChangeZ11111111111A23`AAq1aa1aAqA1RA11A111111a1A11AAA22; *H q) PROCEDURE setcharttype #DEFINE I_AREA_GRAPH 76 #DEFINE I_AREA3D_GRAPH 78 #DEFINE I_BAR_GRAPH 57 #DEFINE I_BAR3D_GRAPH 60 #DEFINE I_COLUMN_GRAPH 51 #DEFINE I_COLUMN3D_GRAPH 54 #DEFINE I_PIE_GRAPH 5 #DEFINE I_PIE3D_GRAPH -4102 #DEFINE I_LINE_GRAPH 4 #DEFINE I_LINE3D_GRAPH -4101 LOCAL lnChartType,nChartValue nChartValue = THIS.ListIndex DO CASE CASE m.nChartValue = 1 &&Area lnChartType = I_AREA_GRAPH CASE m.nChartValue = 2 &&Area 3D lnChartType = I_AREA3D_GRAPH CASE m.nChartValue = 3 &&Bar lnChartType = I_BAR_GRAPH CASE m.nChartValue = 4 &&Bar 3D lnChartType = I_BAR3D_GRAPH CASE m.nChartValue = 5 &&Column lnChartType = I_COLUMN_GRAPH CASE m.nChartValue = 6 &&Column 3D lnChartType = I_COLUMN3D_GRAPH CASE m.nChartValue = 7 &&Pie lnChartType = I_PIE_GRAPH CASE m.nChartValue = 8 &&Pie 3D lnChartType = I_PIE3D_GRAPH CASE m.nChartValue = 9 &&Line lnChartType = I_LINE_GRAPH CASE m.nChartValue = 10 &&Line 3D lnChartType = I_LINE3D_GRAPH ENDCASE THISFORM.oObject.nChartType = lnChartType ENDPROC PROCEDURE Refresh #DEFINE I_AREA_GRAPH 76 #DEFINE I_AREA3D_GRAPH 78 #DEFINE I_BAR_GRAPH 57 #DEFINE I_BAR3D_GRAPH 60 #DEFINE I_COLUMN_GRAPH 51 #DEFINE I_COLUMN3D_GRAPH 54 #DEFINE I_PIE_GRAPH 5 #DEFINE I_PIE3D_GRAPH -4102 #DEFINE I_LINE_GRAPH 4 #DEFINE I_LINE3D_GRAPH -4101 #DEFINE C_AREA_GRAPH "Area" #DEFINE C_AREA3D_GRAPH "3D Area" #DEFINE C_BAR_GRAPH "Bar" #DEFINE C_BAR3D_GRAPH "3D Bar" #DEFINE C_COLUMN_GRAPH "Column" #DEFINE C_COLUMN3D_GRAPH "3D Column" #DEFINE C_PIE_GRAPH "Pie" #DEFINE C_PIE3D_GRAPH "3D Pie" #DEFINE C_LINE_GRAPH "Line" #DEFINE C_LINE3D_GRAPH "3D Line" IF THIS.ListCount=0 THIS.AddItem(C_AREA_GRAPH) THIS.AddItem(C_AREA3D_GRAPH) THIS.AddItem(C_BAR_GRAPH) THIS.AddItem(C_BAR3D_GRAPH) THIS.AddItem(C_COLUMN_GRAPH) THIS.AddItem(C_COLUMN3D_GRAPH) THIS.AddItem(C_PIE_GRAPH) THIS.AddItem(C_PIE3D_GRAPH) THIS.AddItem(C_LINE_GRAPH) THIS.AddItem(C_LINE3D_GRAPH) ENDIF LOCAL nGetValue,lnChartType nGetValue=THISFORM.oObject.nChartType IF VARTYPE(nGetValue)#"N" nGetValue = I_AREA_GRAPH ENDIF DO CASE CASE m.nGetValue= I_AREA_GRAPH &&Area lnChartType = C_AREA_GRAPH CASE m.nGetValue= I_AREA3D_GRAPH &&Area 3D lnChartType = C_AREA3D_GRAPH CASE m.nGetValue= I_BAR_GRAPH &&Bar lnChartType = C_BAR_GRAPH CASE m.nGetValue = I_BAR3D_GRAPH &&Bar 3D lnChartType = C_BAR3D_GRAPH CASE m.nGetValue = I_COLUMN_GRAPH &&Column lnChartType = C_COLUMN_GRAPH CASE m.nGetValue = I_COLUMN3D_GRAPH &&Column 3D lnChartType = C_COLUMN3D_GRAPH CASE m.nGetValue = I_PIE_GRAPH &&Pie lnChartType = C_PIE_GRAPH CASE m.nGetValue = I_PIE3D_GRAPH &&Pie 3D lnChartType = C_PIE3D_GRAPH CASE m.nGetValue = I_LINE_GRAPH &&Line lnChartType = C_LINE_GRAPH CASE m.nGetValue = I_LINE3D_GRAPH &&Line 3D lnChartType = C_LINE3D_GRAPH OTHERWISE lnChartType = C_AREA_GRAPH ENDCASE THIS.Value = lnChartType THIS.Width = 120 ENDPROC PROCEDURE InteractiveChange THIS.SetChartType() ENDPROC combobox builderd.vcx.PROCEDURE Valid THISFORM.Refresh() ENDPROC cmdFile filepicker filepicker commandbutton)MS Sans Serif, 0, 8, 5, 13, 11, 11, 2, 0  filepickerPixelsClass3 container qqS%( U T"TCCCC 6%C C0 oT CU LCFILENAMELCEXTNSTHISPARENT CEXTSKELETONTXTFILEVALUETHISFORMREFRESHClick,11!aA1)qPROCEDURE Click LOCAL lcFileName,lcExtns lcExtns = THIS.Parent.cExtSkeleton lcFileName = ALLTRIM(GETFILE(IIF(!EMPTY(lcExtns),lcExtns,""))) IF !EMPTY(lcFileName) AND FILE(lcFileName) THIS.Parent.TxtFile.Value = lcFileName ENDIF THISFORM.Refresh() ENDPROC {Top = 1 Left = 210 Height = 23 Width = 27 FontName = "MS Sans Serif" FontSize = 8 Caption = "..." Name = "cmdFile"   %ShbU CUTHISFORMREFRESHValid,11#)iFontName = "MS Sans Serif" FontSize = 8 Height = 23 Left = 1 Top = 1 Width = 203 Name = "txtFile" #   ?%`UTTC IF TYPE(".&lcProp.")#"U"*IF ! (.&lcProp. == THIS.cFileName).&lcProp. = THIS.cFileName ULCPROPTHIS CPROPERTY CFILENAMETXTFILEVALUETHISFORMOOBJECTTTC IF TYPE(".&lcProp.")#"U"THIS.cFileName=.&lcProp. T"%CuserbMC T CU LCPROPTHIS CPROPERTY CFILENAMETXTFILEVALUETHISFORMOOBJECTUSER CEXTSKELETONRefresh,Init-1qAAA2qaAA!!A1 < ) GPROCEDURE Refresh LOCAL lcProp lcProp = THIS.cProperty THIS.cFileName = ALLTRIM(THIS.txtFile.Value) WITH THISFORM.oObject IF TYPE(".&lcProp.")#"U" IF ! (.&lcProp. == THIS.cFileName) .&lcProp. = THIS.cFileName ENDIF ENDIF ENDWITH ENDPROC PROCEDURE Init LOCAL lcProp lcProp = THIS.cProperty THIS.cFileName = ALLTRIM(THIS.txtFile.Value) WITH THISFORM.oObject IF TYPE(".&lcProp.")#"U" THIS.cFileName=.&lcProp. THIS.txtFile.Value = THIS.cFileName ENDIF ENDWITH IF TYPE("user")="M" AND !EMPTY(user) THIS.cExtSkeleton = ALLTRIM(user) ENDIF ENDPROC PROCEDURE Init #DEFINE C_ADDCODE_LOC "Would you like to have code added to the RightClick event that invokes this menu?" #DEFINE C_BUILDERALREADYRUN_LOC "The builder was already run for this class and added code to RightClick event." #DEFINE C_METHOD "RightClick" LOCAL lcMenuCode,lcMethodContents,agetform DIMENSION agetform[1] IF ASELOBJ(agetform,1)=0 RETURN .F. ENDIF lcMethodContents= ALLTRIM(agetform[1].ReadMethod(C_METHOD)) IF !EMPTY(lcMethodContents) MESSAGEBOX(C_BUILDERALREADYRUN_LOC) RETURN .F. ENDIF lcMenuCode = "THIS."+THISFORM.oObject.Name+".DoMenu()" IF MESSAGEBOX(C_ADDCODE_LOC,36) = 6 agetform[1].WriteMethod(C_METHOD,lcMenuCode) ENDIF RETURN .F. &&prevent builder from loading ENDPROC FontName = "MS Sans Serif" FontSize = 8 Height = 24 Style = 2 Width = 140 lautorefresh = .F. lupdateonchange = .F. Name = "chartpicker"